1. Field of the Invention
The present invention relates to controlling semiconductor manufacturing processes, and, more specifically, to dynamically selecting semiconductor manufacturing tools and chambers to process a particular group of wafers based on information provided by the tools and chambers.
2. Related Art
In a conventional semiconductor manufacturing environment, a factory for manufacturing semiconductor products (e.g., microprocessors, memory units, logic units and the like) typically has a number of semiconductor processing tools, each of which performs one or more of a variety of semiconductor fabrication processing steps. For example, one tool may be configured to deposit a film (having a certain thickness) on a wafer, and another tool may be configured to etch away a layer from a wafer.
An example of a conventional semiconductor manufacturing factory as mentioned above is now described with regard to FIGS. 1-2. As first shown in FIG. 1, a conventional manufacturing factory 101 includes a controller 106, software applications 107 and a number of tools 1, 2, . . . , n, wherein “n” is an arbitrary integer. Although the controller 106 and the software applications 107 are shown as separate entities, the controller 106 can include one or more applications of the software applications 107. For the present purpose, it is sufficient to describe the controller 106 and software applications 107 as configured to control semiconductor manufacturing processing steps (e.g., instructing material moving machines to move wafers from one tool to another, instructing tools to process wafers in accordance with predefined recipes, etc.).
A typical tool is configured to process wafers (e.g., a layer deposition process, a layer etching process and the like) using one or more chambers. Chambers are typically where wafers are actually processed, and each can have a different function within a tool. For instance, one chamber of a tool can be configured to clean wafers and another chamber in the same tool can be configured to receive the cleaned wafers and deposit a layer of film on the wafer.
As wafers are processed by tools, the wafers are transported from one tool to another and processed therein until completed semiconductor products are fabricated. The controller 106 often stores trace information directed to which tools have processed which of the wafers. In some conventional embodiments, the wafers can be looped around to be processed two times or more by the same tool after being processed by other tools. In the parlance of semiconductor manufacturing, this is called a re-entry.
As the wafers are being transported around and processed by many different tools, the controller 106 is also configured to determine the status of its tools by receiving status information from the tools. This allows the controller 106 to decide which tools are operational and which are not. In turn, the controller 106 determines which tool to use for processing which lot of wafers.
A conventional tool typically uses some form of a binary flag signal to indicate whether the tool is operational or not. However, if one of the chambers belonging to a tool is not operational, the flag for that tool will be set to indicate that the entire tool is not operational, even if other chambers of the same tool are operational. Furthermore, each chamber often performs processing steps over a wide range of qualities. For example, a chamber may deposit layers precisely as anticipated when the tool is new or when it undergoes a maintenance process, but, over time, the performance of the chamber may degrade (e.g., a film layer of a deposition process may become less uniform). For the processing of certain wafers by that tool, a certain degree of degradation may be acceptable, while for processing other wafers, that same degree of degradation may not be acceptable. (For example, for certain types of semiconductor devices, low uniformity in the film layer will cause these devices to malfunction, while for other devices, the low uniformity will have no impact.) However, a decision must be made as to how degraded the tool performance must become before the flag indicating non-operational status is set. In effect, the flag can be set to meet only one standard of degradation (e.g., that of devices requiring no or little degradation, or that of devices where degradation has no impact.). Hence, although a chamber may be able to process wafers that can accept some degradation, if the flag is set to meet the higher standard, then the entire tool, not just the chamber, must be designated as not operational. These shortcomings of the conventional tools cause inefficient utilization of tool/chamber process resources.
In another aspect of conventional tools, the status information is set manually. For instance, the degree of degradation must be measured by an operator at certain intervals by evaluating processed wafers. The degree of degradation is then updated for that tool. The measuring, evaluating and updating processes by the operator consume time and are not cost effective.
Other shortcomings of conventional semiconductor manufacturing tools and environments are described by referring to FIG. 2, which shows various exemplary applications for the software applications 107. For instance, the software applications can include a number of service applications including: an operator certification application 201, tool operation application 203, data collection application 205, process planning application 207, activity costing application 209, parts management application 211, maintenance management application 213, total production management application 215, fabrication lab simulation application 217, supply chain planning application 219, process simulation application 221, and scheduling application 223. These are examples of software applications often used to operate a semiconductor manufacturing factory. For instance, the tool operation application 203 controls tools, the data collection application 205 collects appropriate data from various tools, and the parts management application 211 handles various parts of the tools and chambers to keep the resources operational.
Each of the software applications 107 includes its own “model” to represent the tools as shown in FIG. 2. This produces a number of shortcomings. First, since each application has its own model, integration of new software applications to the existing controller requires developing models for each of them. Second, when the tools are upgraded or new tools are integrated, many of the individual models are required to be updated, adjusted, and/or otherwise re-developed in order to accommodate the upgrade or the integration. These shortcomings cause delays and cost overruns common in the industry when integrating new tools or upgrading existing tools.